﻿Public Class xtf_ABMpersonalInterno
    Dim frm_listado As Object = Nothing
    Dim ulg_row As DataRow
    Dim obj_Personal As cls_personal_ = Nothing

    Dim idTipoEmailEmpresa As Integer = 0
    Dim idTipoTelefonoEmpresa As Integer = 0

    Public Sub New()
        InitializeComponent()
        btn_Acceso.Visible = True
        AgregarValidaciones()
        btn_Guardar.Visible = False
        btn_guardarSalir.Visible = False
        btn_Registro.Visible = False
        btn_Acceso.Visible = False
        Dim config_parametro As New cls_config_parametro_
        idTipoEmailEmpresa = config_parametro.Buscar("mailEmpresa").valor
        idTipoTelefonoEmpresa = config_parametro.Buscar("celularEmpresa").valor
    End Sub

    Public Overrides Sub CargarObjetos()
      
    End Sub

   

    Public Shadows Sub Nuevo(ByRef listado As Form)
        Try
            frm_listado = listado
            Me.Text = CType(frm_listado, xtf_ListadoBase).lbl_modulo.Text & " - Nuevo"
            obj_Personal = New cls_Personal_
            btn_Registro.Enabled = False
            btn_Acceso.Enabled = False
            

            Me.Show()


        Catch ex As Exception
            'Dim frmError As New frm_ErrorManager(ex.Message)
        End Try
    End Sub

    Public Shadows Sub Modificar(ByRef Personal As cls_personal_, ByRef listado As Form, ByRef row As DataRow)
        If IsNothing(obj_Personal) Then
            obj_Personal = New cls_Personal_
        End If
        obj_Personal = Personal
        frm_listado = listado
        ulg_row = row : bbi_imprimir.Enabled = True

        Me.Text = CType(frm_listado, xtf_ListadoBase).lbl_modulo.Text & " - " & obj_Personal.ToString
        txt_Nombres.Text = obj_Personal.tercero.nombres
        txt_Apellido.Text = obj_Personal.tercero.apellido
        txt_Iniciales.Text = obj_Personal.iniciales
        txt_Horario.Text = obj_Personal.tercero.horario
        txt_NumeroInterno.Text = obj_Personal.numerointerno
        If Not IsNothing(Personal.cargo) Then
            txt_cargo.Text = Personal.cargo.ToString
        Else
            txt_cargo.Text = "Sin Asignar."
        End If

        If Not IsNothing(Personal.gerencia) Then
            txt_gerencia.Text = Personal.gerencia.ToString
        Else
            txt_gerencia.Text = "Sin Asignar."
        End If

        If Not IsNothing(Personal.sector) Then
            txt_sector.Text = Personal.sector.ToString
        Else
            txt_sector.Text = "Sin Asignar."
        End If
        dte_FechaNacimiento.DateTime = obj_Personal.fechanacimiento

        If Not IsNothing(Personal.centrocostoorden) Then
            txt_centrocostoorden.Text = obj_Personal.centrocostoorden.ToString
        Else
            txt_centrocostoorden.Text = "Sin Asignar."
        End If

        If Not IsNothing(Personal.tercero.telefono_) Then
            For Each telefono As cls_telefono_ In Personal.tercero.telefono_.Items
                If telefono.idtipotelefono = idTipoTelefonoEmpresa Then
                    txt_celularEmpresa.Text = telefono.ToString
                End If
            Next
        End If
        If Not IsNothing(Personal.tercero.email_) Then
            For Each email As cls_email_ In Personal.tercero.email_.Items
                If email.idtipoemail = idTipoEmailEmpresa Then
                    txt_EmailEmpresa.Text = email.ToString
                End If
            Next
        End If

        obj_Personal.tercero.tercerosubcategoria_ = Nothing
        obj_Personal.tercero.telefonoprimario = Nothing
        obj_Personal.tercero.direccionprimario = Nothing
        obj_Personal.tercero.emailprimario = Nothing
        obj_Personal.tercero.usuario_ = Nothing
        obj_Personal.tercero.email_ = Nothing
        obj_Personal.tercero.tercerorelacion_ = Nothing
        obj_Personal.tercero.telefono_ = Nothing
        obj_Personal.tercero.direccion_ = Nothing
        obj_Personal.tercero = Nothing
        obj_Personal.cargo = Nothing
        obj_Personal.sector = Nothing
        obj_Personal.gerencia = Nothing
        btn_Registro.Enabled = True

        Me.Show()
    End Sub


    Public Overrides Function ComprobarDatos() As Boolean

        If Not ControlarValidaciones() Then
            ErrManagerShow("000004", Me)
            Return False
        End If

        Return True
    End Function
    Private Sub dte_FechaNacimiento_EditValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles dte_FechaNacimiento.EditValueChanged
        'txt_Edad.Text = DateDiff(DateInterval.Year, dte_FechaNacimiento.DateTime, Now)
        Dim Años As Object

        Años = DateDiff("yyyy", dte_FechaNacimiento.DateTime, Now)

        If Now.Date < DateSerial(Year(Now), Month(dte_FechaNacimiento.DateTime), dte_FechaNacimiento.DateTime.Day) Then
            Años = Años - 1
        End If
        txt_Edad.Text = CInt(Años)
    End Sub
    Public Shadows Sub btn_Guardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Guardar.Click
        If ComprobarDatos() Then

        End If
    End Sub

    Private Sub btn_Registro_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Registro.Click
        If Not IsNothing(obj_Personal.tercero.registro) Then
            Dim ABMRegistro As New xtf_ABMRegistro(obj_Personal.tercero.registro)
            If ABMRegistro.ShowDialog() = Windows.Forms.DialogResult.OK Then
                flg_Modificado = True
            End If
        End If
    End Sub

    Private Sub btn_Cerrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Cerrar.Click
        If flg_Modificado Then
            bol_comprobarCerrado = False
            Select Case ErrManagerShow("000001", Me)
                Case Windows.Forms.DialogResult.Yes
                    If ComprobarDatos() Then
                        btn_Guardar_Click(Nothing, Nothing)
                    Else
                        Exit Sub
                    End If
                Case Windows.Forms.DialogResult.Cancel : bol_comprobarCerrado = True
                    Exit Sub
            End Select
        End If
        Me.Dispose()
    End Sub





    
End Class